package com.example.demo.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * 签到表(SignIn)实体类
 *
 * @author 杨丽辉
 * @since 2021-03-22 16:26:36
 */
@ApiModel("签到表")
@JsonInclude(JsonInclude.Include.NON_NULL)
public class SignIn implements Serializable {
    private static final long serialVersionUID = 885795016880888936L;
        /**
    *主键
    * 签到表id
    * isnull 1
    */
    @ApiModelProperty(value="签到表id", position=1)
    private String signId;

    /**
    * 签到用户id
    * isnull 0
    */        @ApiModelProperty(value="签到用户id",position=2)
    private String userId;
    /**
    * 创建时间
    * isnull 0
    */        @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
        @ApiModelProperty(value="创建时间",position=3)
    private LocalDateTime createTime;
    /**
    * 签到奖励
    * isnull 0
    */        @ApiModelProperty(value="签到奖励",position=4)
    private Integer signInReward;
    /**
    * 连续签到天数
    * isnull 0
    */        @ApiModelProperty(value="连续签到天数",position=5)
    private Integer continueDays;
    /**
    * 更新时间
    * isnull 0
    */        @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
        @ApiModelProperty(value="更新时间",position=6)
    private LocalDateTime updateTime;
    /**
    * 签到日期
    * isnull 0
    */            @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
    @ApiModelProperty(value="签到日期",position=7)
    private LocalDate signInDate;
        
    public String getSignId() {
        return signId;
    }

    public void setSignId(String signId) {
        this.signId = signId;
    }
        
    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }
        
    public LocalDateTime getCreateTime() {
        return createTime;
    }

    public void setCreateTime(LocalDateTime createTime) {
        this.createTime = createTime;
    }
        
    public Integer getSignInReward() {
        return signInReward;
    }

    public void setSignInReward(Integer signInReward) {
        this.signInReward = signInReward;
    }
        
    public Integer getContinueDays() {
        return continueDays;
    }

    public void setContinueDays(Integer continueDays) {
        this.continueDays = continueDays;
    }
        
    public LocalDateTime getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(LocalDateTime updateTime) {
        this.updateTime = updateTime;
    }
        
    public LocalDate getSignInDate() {
        return signInDate;
    }

    public void setSignInDate(LocalDate signInDate) {
        this.signInDate = signInDate;
    }

        @Override
    public String toString() {
        return "{" +
                    " \"signId\":" + signId +
                                  " ,\"userId\":" + userId +
                            " ,\"createTime\":" + createTime +
                            " ,\"signInReward\":" + signInReward +
                            " ,\"continueDays\":" + continueDays +
                            " ,\"updateTime\":" + updateTime +
                            " ,\"signInDate\":" + signInDate +
                  '}';
    }


}
